home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD 2.1 / Amiga Developer CD v2.1.iso / DevInfo / DeviceDevelopment / NSD-History < prev    next >
Encoding:
Text File  |  1997-05-15  |  4.6 KB  |  107 lines

  1.  
  2.     $Id: NSD-History 1.4 1997/05/15 18:11:48 heinz Exp $
  3.  
  4.  
  5. History & Conformance
  6. =====================
  7.  
  8. This chapter will tell you about changes in different versions of
  9. NSD and about the reasons behind the changes.
  10.  
  11. The most recent changes are at the top of the list:
  12.  
  13.     - Public Revision 1.6: Minor text cleanups and clarifications
  14.       for publication on ftp.amiga.de. No substantial changes.
  15.  
  16.     - This version of NSD fixes an obvious typo in the
  17.       define list that nobody noticed or reported previously.
  18.  
  19.       The correct define name for audio type devices is:
  20.  
  21.         #define NSDEVTYPE_AUDIO         8   /* like audio.device */
  22.  
  23.       It used to be documented as NSDEVTYPE_AUDIOARD, which is
  24.       wrong.
  25.  
  26.       The text "large enough" describing the mn_Length check has
  27.       been replaced with a description of "at least the minimum
  28.       required size". It had turned out that people misunderstood
  29.       "large enough" as meaning "exactly of the required size",
  30.       which is obviously wrong in the context of devices supporting
  31.       multiple request sizes for different types of commands.
  32.  
  33.       Similar to the change mentioned above, other places have been
  34.       reworded to avoid misunderstandings.
  35.  
  36.       The basic NSD command set description reflects the
  37.       distinction between command set and semantic consequences
  38.       now by elaborating on the device types. There is also a
  39.       description now on the standard V40 command slots for the NSD
  40.       device types.
  41.  
  42.       The NSDEVTYPE_TRACKDISK specific section has been extended
  43.       with a description for ETD like commands. Also, a note has
  44.       been added that e.g. the V40 cd.device as used by C= for the
  45.       CD32 game system should not be forgotten. It is a C= V40 OS
  46.       device "like trackdisk", too. General clarification comments
  47.       have been added in various places.
  48.  
  49.       Notes for NSDEVTYPE_SANA2 have been added.
  50.  
  51.       As it turns out, NSD is not only about identifying device
  52.       capabilities, but also about safe use of a device as a
  53.       consequence. While 100% safety can probably never be reached
  54.       within the existing frame, there are simple ways to make
  55.       usage of devices a lot safer. The text now reflects this.
  56.  
  57.       Due to the complexity of the issues involved, the document
  58.       has been split into sub documents. The wording has been
  59.       changed in several places to reflect this.
  60.  
  61.       Additionally, a "Thoughts & Consequences" section, a "Future
  62.       Directions" section, and this "History & Conformance" section
  63.       have been added as sub documents.
  64.  
  65.       The requirement of changing TD_GETDRIVETYPE for NSD
  66.       trackdisk like devices has been removed. The DRIVE_NEWSTYLE
  67.       identifier for trackdisk like devices doesn't serve any
  68.       useful purpose. It never has and has been introduced only
  69.       because of an oversight during the revision process. While
  70.       the trackdisk TD_GETDRIVETYPE command generally isn't exactly
  71.       the most useful command in the world currently, and while it
  72.       has been documented that anyone using a new style device
  73.       should use TD_GETGEOMETRY, redefinition of TD_GETDRIVETYPE is
  74.       obviously not a useful thing in this context and it would mess
  75.       up the implementation of a true NSD trackdisk.device
  76.       replacement.
  77.  
  78.       The NSD recognition sequence contains an additional simple
  79.       check now. Correctly written software will continue to work
  80.       well, and software written now will be safer.
  81.  
  82.       A recommendation has been added on how to set up a reused
  83.       request structure for another OpenDevice() to do a general
  84.       NSD query. As some strange device expect parameter data being
  85.       set up on an OpenDevice() call, the request structure should
  86.       not contain or point to garbage data.
  87.  
  88.     - Revision 1.4 of NSD got published soon after the release of
  89.       the Amiga Developer CD 1.1. It added the requirement to check
  90.       mn_Length in OpenDevice for at least the minimum required
  91.       size to be handled by the device and documented the "safer
  92.       assumption" for querying a device. It had turned out that
  93.       SANA devices can barf on a general query. As a device
  94.       implementing the mn_Length check will at worst fail to open
  95.       instead of messing up the system which could have happened
  96.       previously, NSD got safer and better this way. A client not
  97.       using the safer assumption is more likely to fail with bad
  98.       devices, but it will still work with the updated NSD spec if
  99.       it doesn't have bugs.
  100.  
  101.     - Revision 1.0 of NSD, as published on the Amiga Developer CD
  102.       1.1, unfortunately had no RCS Id string. It should
  103.       be referred to as NSD revision 1.0.
  104.  
  105.  
  106. *** EOT ***
  107.